package com.jerry.orm;

import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

/**
 *  配置文件的读取类 加载JDBC连接的配置文件
 *  SqlSession加载的时候就会读取此类加载配置文件
 */
public class ConfigurationReader {
    //当作一个缓存,将properties读出来的数据装入
    private static Map<String,String> map = new HashMap<>();

    //在当前类加载的时候就去读取配置文件,并且是只读一次的
    static {
        Properties prop = new Properties();
        InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties");
        try {
            prop.load(inputStream);
            Enumeration<?> enumeration = prop.propertyNames();
            while (enumeration.hasMoreElements()) {
                String key = (String) enumeration.nextElement();
                String value = prop.getProperty(key);
                map.put(key,value);
            }
        } catch (IOException e) {
            System.out.println("读取配置文件失败,请确保文件路径是否正确");
            e.printStackTrace();
        }
    }


    public Map<String,String> getMap() {
        return map;
    }

    public static String getValue(String key) {
        return map.get(key);
    }
}
